# -*- coding: utf-8 -*-

"""
代理模式

模式特点：为其他对象提供一种代理以控制对这个对象的访问。

程序实例：同模式特点描述。

代码特点：无
"""


class Interface(object):
    def request(self):
        return 0


class RealSubject(Interface):
    def request(self):
        print "Real Request"


class Proxy(Interface):
    def __init__(self):
        self.real = RealSubject()

    def request(self):
        self.real.request()


if __name__ == "__main__":
    p = Proxy()
    p.Request()

